#pragma once

#include <QPolygonF>
#include <QPen>

class QCurve
{
private:
    int id;
    QPolygonF curveData;
    QPolygonF curveDataFormatted;
    int curveLimit;

    QPen curvePen;

    double xMin, xMax;
    double yMin, yMax;

public:
    QCurve();

    void findMinMax(void);
    void formatPoints(QPointF zeroPoint);

    void setID(int _id);
    int getID(void);

    void addPoint(QPointF point);
    QPolygonF getPoints(void);
    QPolygonF getPointsFormatted(void);

    void setLimit(int _curveLimit);
    int getLimit(void);

    void setPen(QPen _curvePen);
    QPen getPen(void);

    double getYMin(void);
    double getYMax(void);
};
